]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
screenShield: Delay destruction of unlock dialog
authorFlorian Müllner <fmuellner@gnome.org>
Wed, 19 Sep 2012 02:34:49 +0000 (04:34 +0200)
committerFlorian Müllner <fmuellner@gnome.org>
Wed, 19 Sep 2012 09:50:57 +0000 (11:50 +0200)
While the unlock dialog is created early so that it appears below
the shield while the curtain slides up, it is destroyed immediately
when the shield slides back in.
Keep it around until the shield is down instead.

https://bugzilla.gnome.org/show_bug.cgi?id=684342

js/ui/screenShield.js

index c2e7cb651e7465d710a9cf05de91a31f674193fc..96e2f80b0da1262184b45a998a09cc5a4a088c6b 100644 (file)
@@ -648,9 +648,6 @@ const ScreenShield = new Lang.Class({
     },
 
     _onUnlockFailed: function() {
-        this._dialog.destroy();
-        this._dialog = null;
-
         this._resetLockScreen(true, false);
     },
 
@@ -701,6 +698,10 @@ const ScreenShield = new Lang.Class({
     },
 
     _lockScreenShown: function() {
+        if (this._dialog)
+            this._dialog.destroy();
+        this._dialog = null;
+
         if (this._arrowAnimationId)
             Mainloop.source_remove(this._arrowAnimationId);
         this._arrowAnimationId = Mainloop.timeout_add(6000, Lang.bind(this, this._animateArrows));